home *** CD-ROM | disk | FTP | other *** search
- Path: in1.uu.net!tandem!usenet
- From: Anatoli Mandelchtam <tolik@tarley_pc.loc201.tandem.com>
- Newsgroups: comp.lang.c++
- Subject: Re: [help] Calling BTRIEVE functions in C?Hello,
- Date: Sat, 06 Jan 1996 23:52:49 -0800
- Organization: Tandem Computers Inc., Cupertino, CA
- Message-ID: <30EF7BD1.1102@tarley_pc.loc201.tandem.com>
- References: <4ch821$ut0@news.doit.wisc.edu> <4cm8i7$np0@vivaldi.telepac.pt>
- NNTP-Posting-Host: miket_home1.fnord.tandem.com
- Mime-Version: 1.0
- Content-Type: text/plain; charset=us-ascii
- Content-Transfer-Encoding: 7bit
- X-Mailer: Mozilla 2.0b4 (Win95; I)
-
- J.Carlos wrote:
- .>
- .> tuant@hp-3.cae.wisc.edu (Truong Tuan) wrote:
- .>
- .> >I am trying to integrate a DOS application to a WINDOWS application(DYNAMICS).
- .> >To do this, I needed to be able to open DYNAMICS' files, which are BTRIEVE files.
- .> > ...
- .> >However, I could not open the files. >When I compile MyCode.C, using the Turbo
- .C++(ver.4.5), everything went OK.
- .> >However, when I selected RUN (from compiler menu bar) , I got an error message:
- .> >Error: Undefine symbol BTRV(..).
- .>
- .> >Questions:
- .>
- .> >1) Could it be the fact that I did not have the BTRIEVE (DOS version) running
- .> > before I tried to run MyCode.exe? If so, how do I run BTRIEVE before
- .> > running my program?
- .>
- .> No, this is a linker error, the problem is that in Windows the
- .> function that call's BTRIEVE is BTRCALL instead of BTRV, to use BTRV
- .> you must add a C module to your projects that comes with the Btrv
- .> developer kit (something like WBTRINTF.C), you also have to include
- .> the BTRIEVE library in the project.
- .> In Windows you don't 'run' BTRIEVE, keep the DLL's and the EXE in you
- .> path and your first call to the database will handle the
- .> inicialization.
- .>
- .> >2) Do I need the DOS version of BTRIEVE when I already got the WINDOWS version?
- .>
- .> No, you don't ...
-
- In addition to the above keep in mind that there exists a 32-bit version of the
- Btrieve API both for WinNT and Win95. In that version you WBTRCALL.DLL is replaced
- with WBTRV32.DLL, but API remains the same as long as you use .C module that comes
- with the client software (only a #define directive will look different). For running
- a 16-bit Btrieve application in the 32-bit environment, a special BTRTHUNK.DLL is
- provided. It translates calls to the WBTRCALL.DLL into calls to the WBTRV32.DLL.
-
- The latest version of the client software that BTI e-mailed me in the mid-December
- fixes an annoying bug in the 32-bit version when any attempts to open a file from
- a child thread would result in a "error 75" message on all the connections done by
- the parent thread.
-
- Another bug that is still not fixed involves VC++ 4.0. Any attempts to open files
- from within the IDE result in error 20. Compiled app will run Ok if started not
- from the IDE though.
-